import { IPSBDTable } from './ipsbdtable';
import { IPSSysBDColSet } from './ipssys-bdcol-set';
import { IPSSysBDColumn } from './ipssys-bdcolumn';
import { IPSSysBDSchemeObject } from './ipssys-bdscheme-object';
import { IPSSysBDTableRS } from './ipssys-bdtable-rs';

/**
 *
 * @export
 * @interface IPSSysBDTable
 */
export interface IPSSysBDTable extends IPSBDTable, IPSSysBDSchemeObject {
  /**
   * 大数据表列族集合
   *
   * @type {IPSSysBDColSet[]}
   */
  getAllPSSysBDColSets(): IPSSysBDColSet[] | null;

  /**
   * 大数据表列族集合
   *
   * @type {IPSSysBDColSet[]}
   */
  get allPSSysBDColSets(): IPSSysBDColSet[] | null;

  findPSSysBDColSet(objKey: any): IPSSysBDColSet | null;

  /**
   * 大数据表列集合
   *
   * @type {IPSSysBDColumn[]}
   */
  getAllPSSysBDColumns(): IPSSysBDColumn[] | null;

  /**
   * 大数据表列集合
   *
   * @type {IPSSysBDColumn[]}
   */
  get allPSSysBDColumns(): IPSSysBDColumn[] | null;

  findPSSysBDColumn(objKey: any): IPSSysBDColumn | null;

  /**
   * 大数据表关系集合（主表）
   *
   * @type {IPSSysBDTableRS[]}
   */
  getMajorPSSysBDTableRSs(): IPSSysBDTableRS[] | null;

  /**
   * 大数据表关系集合（主表）
   *
   * @type {IPSSysBDTableRS[]}
   */
  get majorPSSysBDTableRSs(): IPSSysBDTableRS[] | null;

  findMajorPSSysBDTableRS(objKey: any): IPSSysBDTableRS | null;

  /**
   * 大数据表关系集合（从表）
   *
   * @type {IPSSysBDTableRS[]}
   */
  getMinorPSSysBDTableRSs(): IPSSysBDTableRS[] | null;

  /**
   * 大数据表关系集合（从表）
   *
   * @type {IPSSysBDTableRS[]}
   */
  get minorPSSysBDTableRSs(): IPSSysBDTableRS[] | null;

  findMinorPSSysBDTableRS(objKey: any): IPSSysBDTableRS | null;
}
